// 独一无二的值
const sym = Symbol();
const sym1 = Symbol('foo'); // label 标签
// console.log(typeof sym,sym); // symbol Symbol()

// symbol 可以用于对象的key
// 使用Symbol 构造函数实例化，一个标记为id 的唯一值ID
// ID 唯一性 Symbol
const ID = Symbol('id');
// es6 之前key string
// symbol 作为key
const sex = '男'
const num = 1;
const age = Symbol('age');
const user = {
    name: '张三',
    age: 18,
    [age]: 20,
    // [sex]: '男',
    // [num]: 2,
    // key 是独一无二的
    [ID]: '123'
}
// console.log(user.name,user[ID],user.age,user[age]);
// 用symbol实现私有属性 对象的隐私 内部需要 不希望外界调用
for (const key in user) {
    console.log(key); // 打印的是name age 没有打印ID
}